import { createRouter, createWebHistory } from 'vue-router'
import Greenhouse from '../components/greenhouse.vue'
import Login from '../components/login.vue'

const routes = [
  {
    path: '/',
    name: 'Login',
    component: Login
  },
  {
    path: '/greenhouse',
    name: 'Greenhouse',
    component: Greenhouse,
    meta: { requiresAuth: true } // 添加元信息，表示该路由需要登录
  }
]

const router = createRouter({
  history: createWebHistory(),
  routes
})

// 模拟一个简单的登录状态检查函数
function isAuthenticated() {
  // 这里你可以根据实际情况检查用户是否已登录
  // 例如检查 localStorage 或 Vuex 中的登录状态
  const token = localStorage.getItem('token');
  const expireTime = localStorage.getItem('tokenExpires');
  return token != null && parseInt(expireTime) > Date.now();
}

// 全局前置守卫
router.beforeEach((to, from, next) => {
  if (to.meta.requiresAuth && !isAuthenticated()) {
    // 如果路由需要登录且用户未登录，则重定向到登录页面
    next({ name: 'Login' })
  } else {
    // 否则继续导航
    next()
  }
})

export default router